#!/bin/bash
#Verifico que por lo menos haya 2 parametros
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ $# -lt 2 ]; then
	message="No se especifico archivo de origen o destino"
	$DIR/Grabar_L Mover_B E "$message"
	exit 1
fi
#Verifico que este seteado CONFDIR
if [ -z ${CONFDIR+x} ]; then
	message="Mover_B: No esta seteado CONFDIR"
	echo $message
	exit 2
fi
#Checkeo si el parametro de destino es un directorio o un archivo
if [ -d "$2" ]; then
	path="$2"
	file=$(basename "$1")
else
	path=$(dirname "$2")
	file=$(basename "$2")
fi
#Verifico que el origen y el destino no sean iguales
if [ "$1" = "$path/$file" ]; then
	message="Origen igual a destino. No se efectua operacion."
	$DIR/Grabar_L Mover_B W "$message"
	if [ $3 ]; then	
		$DIR/Grabar_L $3 W "Mover_B: $message"
	fi
else
#Verifico que exista el origen
	if [ ! -f "$1" ]; then
		message="No existe el origen: $1"
		$DIR/Grabar_L Mover_B E "$message"
		if [ $3 ]; then
			$DIR/Grabar_L $3 E "Mover_B $message"
		fi
		exit 2
	fi
#Verifico que exista la carpeta de destino
	if [ ! -d "$path" ]; then
		message="No existe el destino $path"
		$DIR/Grabar_L Mover_B E "$message"
		if [ $3 ]; then
			$DIR/Grabar_L $3 E "Mover_B: $message"
		fi
		exit 2
	fi
#Si no esta duplicado, muevo
	if [ ! -f "$path/$file" ]; then	
		mv "$1" "$2"
		message="Operacion exitosa. Movido $1 a $2"
		$DIR/Grabar_L Mover_B I "$message"
		if [ $3 ]; then
			$DIR/Grabar_L $3 I "Mover_B: $message"
		fi
	else
#Si esta duplicado muevo a /dup con la numeracion correspondiente
		message="Ya existe un archivo con ese nombre. Renombrado."
		$DIR/Grabar_L Mover_B W "$message"
		if [ $3 ]; then
			$DIR/Grabar_L $3 W "Mover_B: $message"
		fi
		if [ ! -d "$path/dup" ]; then
			mkdir "$path/dup"
		fi
		chmod +rw "$CONFDIR/Instalar_TP.conf"
		ext=`grep "^NUMERACION.*$" "$CONFDIR/Instalar_TP.conf" | sed "s/^NUMERACION=\([^=]*\)=.*/\1/" `
		if [ ! $ext ]; then
			echo "NUMERACION=0=" >> "$CONFDIR/Instalar_TP.conf"
			ext=0
		fi 
		ext=$(($ext + 1))
		sed -i "s/\(^NUMERACION=\).*/\1$ext=$(whoami)=$(date)/" "$CONFDIR/Instalar_TP.conf"
		nuevo="$path/dup/$file.$ext" 
		mv "$1" "$nuevo"
		message="Operacion exitosa. Movido $1 a $nuevo"
		$DIR/Grabar_L Mover_B I "$message"
		if [ $3 ]; then
			$DIR/Grabar_L $3 I "Mover_B: $message"
		fi
		chmod -w "$CONFDIR/Instalar_TP.conf"
	fi
fi
